package pe.com.ztaxi.taxis.service;

import java.util.List;

import pe.com.ztaxi.taxis.model.OrdenServicio;
import pe.com.ztaxi.taxis.model.UnidadMovil;

public interface UnidadMovilService {

	public UnidadMovil buscarPorCodigo(Integer codigoUnidadMovil);
	
	public List<UnidadMovil> buscarUnidadesCercanas(OrdenServicio ordenServicio);
	
	public List<UnidadMovil> buscarUnidadesCercanasPuntuales(OrdenServicio ordenServicio);
	
	public UnidadMovil getUnidadMasAdecuada(List<UnidadMovil> unidades, OrdenServicio orden);
	
	public void calcularLlegadaEsperada(UnidadMovil unidad, OrdenServicio ordenServicio);
	
	public UnidadMovil actualizarUbicacion(UnidadMovil unidadMovil);	

	public void actualizarEstadoDestinoFinal(UnidadMovil unidadMovil);	
	
	public boolean deshacerDestinoFinal(UnidadMovil unidadMovil);	
}
